package com.example.mq.common;

import lombok.Data;

import java.io.Serializable;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: ws
 * Date: 2023-10-05
 * Time: 21:15
 */
@Data
public class BasicConsumeArguments extends BasicArguments implements Serializable {
    // basicConsume(String consumerTag, String queueName, boolean autoAck, Consumer consumer)
    private String consumerTag;
    private String queueName;
    private boolean autoAck;
    // Consumer 是个函数式接口（回调函数），不能通过网络传输（函数中的客户端的地址，指令之类的参数，对服务器没有用，服务器不能理解这些东西）
    // 所以处理办法是：
    // 1. 服务器这边有一个固定的回调方法，每当收到这个 BasicConsumeArguments，就把消息返回到客户端
    // 2. 客户端收到消息之后，再在客户端这边执行一个用户自定义的回调函数就行
    // 客户端不需要把自身的回调函数传给服务器，因此这个类就不需要 Consumer 成员
//    private Consumer consumer;
}
